# 变量
# 数据类型  int float str bool
# 数据结构  list tuple set dict  是否有序,是否去重

list1 = list()
tuple1 = tuple()
set1 = set()

dict1 = dict()

print(type(list1))
print(type(tuple1))
print(type(set1))
print(type(dict1))

list2 = list(set1)
print(type(list2))

a = set(list1)
print(type(a))

# 类型转换  强转
int_a = 10
str1 = str(int_a)

# 流程控制语句  分支语句  循环语句
# if elif  else
# while
# for in  遍历一个容器中的元素的时候, 可以不出现下标(索引,index,角标)

set1 = {2, 4, 6, 7, 9}
list1 = [2, 4, 6, 7, 9]
for i in set1:
    print(i)

index = 0
while index < len(list1):
    print(list1[index])
    index += 1

# str  数据类型  数据结构  对比list

# 逻辑运算符  关系运算符
#  not , and ,or   --> 判断条件是否成立的时候使用, bool
#  >,<,>=,<=,==,!=
# is ==  : is 比较的是内存地址是否相同, == 比较的是数值是否相同

list1 = [1, 2, 3, 4]
list4 = [1, 2, 3, 4]
print(list1 == list4)
print(list1 is list4)

print(id(list1))
print(id(list4))

a = 20
b = 20

print(a == b)
print(a is b)

print(id(a))
print(id(b))

# [-5,256]

a = 'abcde'
b = 'abcde'
print(a is b)

# 内置的函数
# id()
# len()  length  list  str tuple
# print()
# input()
# type()
# isinstance()
# sum()
# range()

# del list1[2]

#  练习最多的 就是 流程控制语句  ,+ 数据结构的使用

# 水仙花数,指一个3位数(100-999),每个位上的数值的三次方，求和，刚好是这个三位数本身。叫水仙花数。
